import {isEmpty} from "./isEmpty";
// 日期
const DATE_REGEX = [
  /^\d{8}$/,                                          // 20180502                     yyyyMMdd
  /^\d{10}$/,                                         // 1525271112                   秒值
  /^\d{12}$/,                                         // 201805021232                 yyyyMMddHHmm
  /^\d{13}$/,                                         // 1525271088641                毫秒值
  /^\d{4}-\d{1,2}-\d{1,2}$/,                          // 2008-05-02                   yyyy-MM-dd
  /^\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}$/,         // 2008-05-02 02:12             yyyy-MM-dd HH:mm
  /^\d{4}-\d{1,2}-\d{1,2}\s\d{1,2}:\d{1,2}:\d{1,2}$/, // 2008-05-02 02:12:12          yyyy-MM-dd HH:mm:ss
  /^\d{4}年\d{1,2}月\d{1,2}日$/,                       // 2008年05月02日                yyyy年MM月dd日
  /^\d{4}年\d{1,2}月\d{1,2}日\s\d{1,2}时\d{1,2}分$/     // 2008年05月02日 02时12分       yyyy年MM月dd日 HH时mm分
];

/**
 * 是否日期
 * @param value
 */
function isDate(value) {
  if (isEmpty(value)) {
    return false;
  } else if (toString.call(value) === '[object Date]') {
    return true;
  }
  for (let i = 0; i < DATE_REGEX.length; i++) {
    if (DATE_REGEX[i].test(value)) {
      return true;
    }
  }
  return false;
}

export {DATE_REGEX, isDate}
